IEEE 754
有料なんだmrsekut.icon
1つ古い版は公開されている
5つの基本形式
32bit
64bit
128bit
etc.
3つのパラメータで決まる
基数
指数部の最大値
精度
例えば、10進数で0.15625を単精度で表現することを考える 2進数に変換すると、$ 1.01 * 2^{-3}なので、以下のように書ける
table:_
符号 +
基数 2
指数 -3
仮数 01
指数部には127のbiasを追加する
$ 124 = -3 + 127
これを2進数に変換すると011111100
これで以下のように表現できる
table:_
符号 (1bit) 0
指数 (8bit) 011111100
仮数 (23bit) 010000 ... 0
https://gyazo.com/9e71b4f8d832732e17440480b4d6dda6 https://ja.wikipedia.org/wiki/IEEE_754
水色が符号
緑が指数
赤が仮数
Web上で遊べるやつ
参考
IEEE754を噛み砕いて解説していてとても良い
近似値計算なので誤差が生じる
数値 = $ (-1)^\mathrm{符号}*(1.\mathrm{仮数})*\mathrm{基数}^{\mathrm{指数}-\mathrm{bias}}
仮数部の最上位桁を1にすることを正規化と呼ぶ
e.g. $ 0.15*10^{-5}から、$ 1.5*10^{-6}にする
128 = (2^(8-1)-2)
範囲
ぱっと範囲を計算する方法
直観的イメージと、計算式、具体例
指数部の符号ってどうやって表現するの
いや、符号ってマイナスで固定か
ts